// JointFormerManager.h: interface for the JointFormerManager class.
//
//////////////////////////////////////////////////////////////////////

#if !defined(AFX_JOINTFORMERMANAGER_H__94416E69_2410_46EB_87F0_3D1DCBB49762__INCLUDED_)
#define AFX_JOINTFORMERMANAGER_H__94416E69_2410_46EB_87F0_3D1DCBB49762__INCLUDED_

#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000

#include "ManagerTemplate.h"
#include "JointFormer.h"
#include "Singleton.h"

class DllExport JointFormerManager : public ManagerTemplate<CString, JointFormer>
{
	DECLARE_SINGLETON(JointFormerManager);

public:
	JointFormerManager();
	virtual ~JointFormerManager();

public:
	JointFormer* GetJointFormer(INT nFirstStyle, INT nSecondStyle);

private:
	void GetFormerProperty(JointFormer* pFormer);
	void GetFormerFunction(JointFormer* pFormer);
	JointFormer* NewFormer(INT nFirstStyle, INT nSecondStyle);

private:
	CString m_strRegularSetTableName; 
	CString m_strJointPropertyTable;
	CString m_strJointFunctionTable;
	CString m_strDBPath;
};

#endif // !defined(AFX_JOINTFORMERMANAGER_H__94416E69_2410_46EB_87F0_3D1DCBB49762__INCLUDED_)
